package com.eduagent.xwqeduagent.api.DocumentTranslation.model;

/**
 * Supported languages for document translation
 */
public enum DocumentTranslationLanguage {
    // Main languages
    CHINESE_SIMPLIFIED("zh"),
    CHINESE_TRADITIONAL("cht"),
    ENGLISH("en"),
    JAPANESE("ja"),
    KOREAN("ko"),
    RUSSIAN("ru"),
    
    // Additional languages (alphabetically ordered)
    ABKHAZ("ab"),
    ACATECO("knj"),
    ACEH("ace"),
    ACHOLI("ach"),
    ACHI("acr"),
    ADHOLA("adh"),
    AFAR("aa"),
    AFRIKAANS("af"),
    AGNI_SANVI("any"),
    AGUARUNA("agr"),
    AKAWAIO("ake"),
    ALBANIAN("sq"),
    ALGERIAN_ARABIC("arq"),
    ALUR("alz"),
    AMBAI("amk"),
    AMHARIC("am"),
    AMUZGO("amu"),
    ANTIGUO_GREEK("grc"),
    ANTIPOLO_IFUGAO("ify"),
    ARABIC("ar"),
    ARAGONESE("an"),
    ARMENIAN("hy"),
    ASHENINKA("cpb"),
    ASTURIAN("ast"),
    AYACUCHO_QUECHUA("quy"),
    AYANGAN_IFUGAO("ifb"),
    AYMARA("aym"),
    AZERBAIJANI("az"),
    BAKA("bdh"),
    BAMBAM("ptu"),
    BAMBARA("bam"),
    BANDIAL("bqj"),
    BANTOANON("bno"),
    BARIAI("bch"),
    BARIBA("bba"),
    BARI("bfa"),
    BARASANA("bsn"),
    BASAA("bas"),
    BASHKIR("ba"),
    BASQUE("eu"),
    BATAK_KARO("btx"),
    BATAK_SIMALUNGUN("bts"),
    BAOULE("bci"),
    BELARUSIAN("be"),
    BELIZEAN_CREOLE("bzj"),
    BEMBA("bem"),
    BENGALI("bn"),
    BERBER("ber"),
    BIAK("bhw"),
    BISLAMA("bi"),
    BOKMÅL("nb"),
    BOKOBARU("bus"),
    BOLA("bnp"),
    BRAZILIAN_PORTUGUESE("pt-BR"),
    BREZHONEG("br"),
    BUALKHAW_CHIN("cbl"),
    BULGARIAN("bg"),
    BULU("bum"),
    BURMESE("my"),
    BUSA("bqp"),
    CABECAR("cjp"),
    CAKCHIQUEL("cak"),
    CAMEROONIAN_PIDGIN("wes"),
    CAMPA("cni"),
    CAMSA("kbh"),
    CANADIAN_FRENCH("fr-CA"),
    CAÑAR_HIGHLAND_QUICHUA("qxr"),
    CAPE_VERDEAN_CREOLE("kea"),
    CATALAN("ca"),
    CEBUANO("ceb"),
    CENTRAL_BIKOL("bcl"),
    CENTRAL_DUSUN("dtp"),
    CENTRAL_HUASTECA_NAHUATL("nch"),
    CENTRAL_IFUGAO("ifa"),
    CENTRAL_PUEBLA_NAHUATL("ncx"),
    CHAKMA("ccp"),
    CHAMORRO("cha"),
    CHECHEN("che"),
    CHEROKEE("chr"),
    CHEWA("ny"),
    CHHATTISGARHI("hne"),
    CHIMBORAZO_HIGHLAND_QUICHUA("qug"),
    CHINANTEC("chq"),
    CHIRU("cdf"),
    CHOKWE("cjk"),
    CHOPI("cce"),
    CHUUKESE("chk"),
    CHUWABU("chw"),
    CHUVASH("cv"),
    CONGO_SWAHILI("swc"),
    COOK_ISLANDS_MAORI("rar"),
    COPTIC("cop"),
    CORNISH("kw"),
    CORSICAN("co"),
    CRIMEAN_TATAR("crh"),
    CROATIAN("hr"),
    CUSCO_QUECHUA("quz"),
    CZECH("cs"),
    DADIBI("mps"),
    DANGME("ada"),
    DANISH("da"),
    DREHU("dhv"),
    DUALA("dua"),
    DUTCH("nl"),
    DYULA("dyu"),
    DZONGKHA("dz"),
    EASTERN_CAGAYAN_AGTA("duo"),
    EDO("bin"),
    EFIK("efi"),
    ESAN("ish"),
    ESPERANTO("eo"),
    ESTONIAN("et"),
    EWE("ee"),
    FALAM_CHIN("cfm"),
    FAROESE("fo"),
    FIJIAN("fj"),
    FILIPINO("fil"),
    FINNISH("fi"),
    FON("fon"),
    FRAFRA("gur"),
    FRANCO_PROVENCAL("frp"),
    FRISIAN("fy"),
    FRIULIAN("fur"),
    GA("gaa"),
    GALELA("gbi"),
    GALICIAN("gl"),
    GARIFUNA("cab"),
    GBAYA("krs"),
    GEORGIAN("jy"),
    GERMAN("de"),
    GREEK("el"),
    GUARANI("gn"),
    GUJARATI("gu"),
    GUAYJAJARA("gub"),
    GUAYMI("gym"),
    GUN("guw"),
    GOFFA("gof"),
    HAKHA_CHIN("cnh"),
    HALBI("hlb"),
    HAWAIIAN("haw"),
    HAWAIIAN_CREOLE_ENGLISH("hwc"),
    HAUSA("ha"),
    HAITIAN_CREOLE("ht"),
    HEBREW("he"),
    HERERO("her"),
    HILIGAYNON("hil"),
    HILL_MARI("mrj"),
    HINDI("hi"),
    HIRI_MOTU("hmo"),
    HMONG("mww"),
    HULI("hui"),
    HUPA("hup"),
    IBAN("iba"),
    IBANAG("ibg"),
    ICELANDIC("is"),
    IDO("io"),
    IGBO("ig"),
    IKA("ikk"),
    ILOCANO("ilo"),
    IMBABURA_HIGHLAND_QUICHUA("qvi"),
    INDONESIAN("id"),
    INTERLINGUA("ia"),
    INTERLINGUE("ie"),
    IRISH("ga"),
    ISOKO("iso"),
    ISTHMUS_ZAPOTEC("zai"),
    ITALIAN("it"),
    IZI("izz"),
    JAKALTEKO("jac"),
    JAVANESE("jv"),
    JINGPHO("kac"),
    KABIYE("kbp"),
    KABYLE("kab"),
    KALAALLISUT("kl"),
    KALMYK_OIRAT("xal"),
    KAMBA("kam"),
    KAONDE("kqn"),
    KAQCHIKEL("cki"),
    KAPINGAMARANGI("kpg"),
    KAQUCHIKEL("cak"),
    KASEM("xsm"),
    KASHUBIAN("csb"),
    KAULONG("pss"),
    KANNADA("kn"),
    KANURI("kr"),
    KEKCHI("kek"),
    KELIKO("kbo"),
    KHMER("km"),
    KICHE("quc"),
    KIKONGO("kg"),
    KIKUYU("kik"),
    KIMBUNDU("kmb"),
    KINYARWANDA("rw"),
    KIRIBATI("gil"),
    KISIHA("jmc"),
    KLINGON("tlh"),
    KUANUA("ksd"),
    KULUNG("kle"),
    KURDISH_KURMANJI("ku"),
    KURDISH_SORANI("ckb"),
    KWANYAMA("kua"),
    KYRGYZ("ky"),
    LACID("lsi"),
    LATIN("la"),
    LATVIAN("lv"),
    LAO("lo"),
    LIMBURGS("li"),
    LINGALA("ln"),
    LINGAO("ond"),
    LINGUA_FRANCA_NOVA("lfn"),
    LITHUANIAN("lt"),
    LOJBAN("jbo"),
    LOMWE("ngl"),
    LOW_GERMAN("nds"),
    LOWER_SORBIAN("dsb"),
    LOZI("loz"),
    LUBA_KASAI("lua"),
    LUBA_KATANGA("lub"),
    LUGANDA("lg"),
    LUKPA("dop"),
    LUNDA("lun"),
    LUN_BAWANG("lnd"),
    LUVALE("lue"),
    LUXEMBOURGISH("lb"),
    MACEDONIAN("mk"),
    MADURESE("mad"),
    MAITHILI("mai"),
    MAALE("mdy"),
    MAKHUWA("vmw"),
    MALAGASY("mg"),
    MALAY("ms"),
    MALAY_TRADE_AND_CREOLE("crp"),
    MALAYALAM("ml"),
    MALTESE("mt"),
    MAM("mam"),
    MAMBWE_LUNGU("mgr"),
    MANIPURI("mni"),
    MANX("gv"),
    MAORI("mi"),
    MAPUCHE("arn"),
    MARANAO("mrw"),
    MARI("mhr"),
    MARSHALLESE("mah"),
    MARATHI("mr"),
    MAURITIAN_CREOLE("mfe"),
    METLATONOC_MIXTEC("mxv"),
    MIDDLE_FRENCH("frm"),
    MIRANDESE("mwl"),
    MIZO("lus"),
    MONGOLIAN("mo"),
    MONGOLIAN_CYRILLIC("mn"),
    MONTENEGRIN("me"),
    MOSSI("mos"),
    MOTU("meu"),
    MUTHUVAN("muv"),
         NAHUATL("nhg"),
     NATENI("ntm"),
     NAVAJO("nav"),
     NIAS("nia"),
     NDAU("ndc"),
     NDYUKA("djk"),
     NEPALI("ne"),
    NIGERIAN_FULFULDE("fuv"),
    NIGERIAN_PIDGIN("pcm"),
    NIUEAN("niu"),
    NORTHERN_GREBO("gbo"),
    NORTHERN_MAM("map"),
    NORTHERN_PUEBLA_NAHUATL("ncj"),
    NORTHERN_SAMI("se"),
    NORTHERN_SOTHO("nso"),
    NORWEGIAN("no"),
    NUMANGGANG("nop"),
    NYAKYUSA("nyy"),
    NYANEKA("nyk"),
    NYEMBA("nba"),
    NYNORSK("nn"),
    NYUNGWE("nyu"),
    OCCITAN("oc"),
    OJIBWA("ojb"),
    OLD_ENGLISH("ang"),
    ORIYA("or"),
    OROKO("bdu"),
    OROMOO("om"),
    OSSETIC("os"),
    PAMPANGA("pam"),
    PANGASINAN("pag"),
    PAPANTLA_TOTONAC("top"),
    PAPIAMENTO("pap"),
    PARAGUAYAN_GUARANI("gug"),
    PASHTO("ps"),
    PAITE("pck"),
    PELE_ATA("ata"),
    PERSIAN("fa"),
    PIJIN("pis"),
    PLAUTDIETSCH("pdt"),
    PLATEAU_MALAGASY("plt"),
    POHNPEIAN("pon"),
    POLISH("pl"),
    PORTUGUESE("pt"),
    POTAWATOMI("pot"),
    POQOMCHI("poh"),
    PUNJABI("pa"),
    QUERETARO_OTOMI("otq"),
    QUICHUA("quw"),
    ROMANIAN("ro"),
    ROMANI("rmn"),
    ROVIANA("rug"),
    RUUND("rnd"),
    SAMBERIGI("ssx"),
    SAMOAN("sm"),
    SAN_MATEO_DEL_MAR_HUAVE("huv"),
    SAN_SALVADOR_KONGO("kwy"),
    SANGO("sg"),
    SANGIR("sxn"),
    SANSKRIT("sa"),
    SABAOT("spy"),
    SARAMACCAN("srm"),
    SARDINIAN("sc"),
    SCOTS("sco"),
    SCOTTISH_GAELIC("gd"),
    SENA("seh"),
    SERBIAN("sr"),
    SERBO_CROATIAN("sh"),
    SEYCHELLES_CREOLE("crs"),
    SESOTHO("st"),
    SGAW_KAREN("ksw"),
    SHAN("shn"),
    SHONA("sn"),
    SHIPIBO("shp"),
    SHUAR("jiv"),
    SIDAMO("sid"),
    SINHALESE("si"),
    SINDHI("sd"),
    SIROI("ssd"),
    SLOVAK("sk"),
    SLOVENIAN("sl"),
    SOMALI("so"),
    SONGE("sop"),
    SOUTH_AZERBAIJANI("azb"),
    SOUTH_BOLIVIAN_QUECHUA("quh"),
    SOUTHERN_NDEBELE("nr"),
    SPANISH("es"),
    SUAU("swp"),
    SUNDANESE("su"),
    SWAHILI("sw"),
    SWAZI("ss"),
    SWEDISH("sv"),
    SYRIAC("syc"),
    TACHELHIT("shi"),
    TAGALOG("tgl"),
    TAHITIAN("ty"),
    TAJIK("tg"),
    TAMIL("ta"),
    TAMAJAQ("tmh"),
    TAMPULMA("tpm"),
    TATAR("tt"),
    TEDIM_CHIN("ctd"),
    TELUGU("te"),
    TENNET("tex"),
    TESO("teo"),
    TETELA("tll"),
    TETUN("tet"),
    TETUN_DILI("tdt"),
    THAI("th"),
    TIMUGON_MURUT("tih"),
    TIV("tiv"),
    TIGRE("tig"),
    TOBA_BATAK("bbc"),
    TOKI_PONA("toki"),
    TOJOLABAL("toj"),
    TONGAN("to"),
    TOORO("ttj"),
    TOK_PISIN("tpi"),
    TSIMANE("cas"),
    TSWANA("tn"),
    TSWA("tsc"),
    TUMA_IRUMU("iou"),
    TUMBUKA("tum"),
    TUNGAG("lcm"),
    TUVALUAN("tvl"),
    TUVAN("tyv"),
    TWI("tw"),
    TZELTAL("tzh"),
    TZOTZIL("tzo"),
    UDMURT("udm"),
    UMA("ppk"),
    UMBUNDU("umb"),
    UPPER_SORBIAN("hsb"),
    URDU("ur"),
    URHOBO("urh"),
    USPANTECO("usp"),
    UZBEK("uz"),
    VENDA("ve"),
    VIETNAMESE("vi"),
    VUNJO("vun"),
    WA("prk"),
    WALON("wa"),
    WALI("wlx"),
    WARAY("war"),
    WARIS("wrs"),
    WASKIA("wsk"),
    WAYUU("guc"),
    WALLISIAN("wls"),
    WELSH("cy"),
    WESTERN_BOLIVIAN_GUARANI("gnw"),
    WESTERN_BUKIDNON_MANOBO("mbb"),
    WESTERN_KAYAH("kyu"),
    WESTERN_LAWA("lcp"),
    WOLAYTTA("wal"),
    WOLOF("wol"),
    XITSONGA("ts"),
    XHOSA("xh"),
    YABEM("jae"),
    YIPMA("byr"),
    YIDDISH("yi"),
    YOM("pil"),
    YONGBEI_ZHUANG("zyb"),
    YONGKOM("yon"),
    YORUBA("yo"),
    YUCATEC_MAYA("yua"),
    YAPESE("yap"),
    ZANDE("zne"),
    ZARMA("dje"),
    ZOTUNG_CHIN("czt"),
    ZULU("zu");
    
    private final String code;
    
    DocumentTranslationLanguage(String code) {
        this.code = code;
    }
    
    public String getCode() {
        return code;
    }
} 